package service

import (
	"gitee.com/gopher2011/mall/app/dao"
	"time"
)

// 全局公开对象
var UmsResource = umsResourceService{}

// 私有对象，所有的方法都绑定到这个结构体上。
type umsResourceService struct{}

//添加后台资源
func (it *umsResourceService) Create(u *dao.UmsResource) (int64, error) {
	u.CreateTime = time.Now()
	return dao.UmsResourceDao.InsertTemplate(*u)
}

//修改后台资源
func (it *umsResourceService) Update(id int64, u *dao.UmsResource) (int64, error) {
	u.Id = id
	insert, err := dao.UmsResourceDao.UpdateById(*u)
	if err != nil {
		return 0, err
	}
	return insert, nil
	return 0, nil
}

// 根据ID获取资源详情
func (it *umsResourceService) GetItem(id int64) (dao.UmsResource, error) {
	return dao.UmsResourceDao.SelectById(id)
}

// 根据ID删除后台资源
func (it *umsResourceService) Delete(id int64) (int64, error) {
	return dao.UmsResourceDao.DeleteById(id)
}

// 分页模糊查询后台资源 Get
func (it *umsResourceService) List(p *dao.UmsResourceList) ([]dao.UmsResource, error) {
	p.PageNum = (p.PageNum - 1) * p.PageSize
	return dao.UmsResourceDao.List(*p)
}

// 查询所有后台资源
func (it *umsResourceService) ListAll() ([]dao.UmsResource, error) {
	return dao.UmsResourceDao.ListAll()
}
